package com.kfm.springboot.util;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class MD5Utils {

    public static String encrypt(String input) {
        try {
            // 创建 MessageDigest 对象，指定使用 MD5 加密算法
            MessageDigest md = MessageDigest.getInstance("MD5");

            // 将输入字符串转换为字节数组
            byte[] inputBytes = input.getBytes();

            // 执行加密操作
            byte[] hashBytes = md.digest(inputBytes);

            // 将加密结果转换为十六进制字符串
            StringBuilder sb = new StringBuilder();
            for (byte b : hashBytes) {
                String hex = Integer.toHexString(0xff & b);
                if (hex.length() == 1) {
                    sb.append('0');
                }
                sb.append(hex);
            }

            return sb.toString();
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
            return null;
        }
    }

    public static String encrypt(String input, String salt) {
        // 将输入字符串和盐值拼接
        String saltedInput = input + salt;

        // 执行加密操作
        return encrypt(saltedInput);
    }
    public static void main(String[] args) {
        String password = "123456";
        String encryptedPassword = MD5Utils.encrypt(password, "ldz");
        System.out.println("Encrypted Password: " + encryptedPassword);
    }
}

